Memory cells in computers and other electronic devices typically store information by storing a charge in a transistor or other circuit or component, such that the cell can be read by examining the charge in the cell. Traditional dynamic random access memory is arranged in rows and columns of memory cells that use a transistor and a capacitor at each memory cell location, such that the transistor is used to selectively charge the capacitor and store data. Reading data comprises selecting a column using a column access signal and reading the charge present in each cell in a selected row of capacitive memory cells.
While dynamic memory loses its data when it is powered off, nonvolatile memory such as flash memory retains its data once programmed. Flash memory comprises a number of independent cells, each of which typically comprises a single transistor and stores a single binary digit or bit of information. In variations, multiple transistors or multiple bits of information per cell are used. A typical flash memory or nonvolatile memory cell resembles a field effect transistor, but has an electrically isolated floating gate that controls or influences electrical conduction between source and drain regions of the memory cell. Data is represented by a charge stored on the floating gate, and the resulting conductivity observed between the source and drain regions during a read operation as a result of a change in the cell's threshold voltage.
The floating gate separates a second gate from the source and drain regions of the memory cell, which is called the control gate. Electrons stored on the floating gate insulated from the control gate and the drain and source by an insulating oxide layer partially cancel out or modify an electric field produced by the control gate, resulting in a change in the effective threshold voltage (Vt) of the memory cell. When the memory cell is read by placing a specified voltage on the control gate, current will either flow or not flow between the source and drain of the device, depending on the presence of a charge on the floating gate and the effective Vt or threshold voltage of the memory cell. The presence or absence of current above a threshold level is sensed in a sense amplifier, and is used to determine the state of the memory cell, resulting in a one or zero value being read.
But, as memory cells become increasingly smaller and the speed with which they operate becomes increasingly faster, factors such as capacitance can cause the observed difference in current flow between a flash memory cell with a charged floating gate and a flash memory cell with an uncharged floating gate to be very small. The decreased cell current at higher densities and larger capacitive loads on the bitline in particular can make it difficult to determine a memory cell's state quickly and reliably. Sense amplifiers can have a difficult time detecting currents that are in the microamp range, especially in applications that operate at high speeds, low voltages and currents, and using very small semiconductor device sizes.